The need for more convenient, intuitive and portable input devices increases, as computers and other electronic devices become more prevalent in our everyday life.
Recently, human gesturing, such as hand gesturing, has been suggested as a user interface input tool in which a hand gesture is detected by a camera and is translated into a specific command. Gesture recognition enables humans to interface with machines naturally without any mechanical appliances. The development of alternative computer interfaces (forgoing the traditional keyboard and mouse), video games and remote controlling are only some of the fields that may implement human gesturing techniques.
Recognition of a hand gesture usually requires identification of an object as a hand and tracking the identified hand to detect a posture or gesture that is being performed.
Known gesture recognizing systems identify a user hand by using color, shape and/or contour detectors. The hand is then tracked by following features, such as pixels, determined to represent the hand, throughout a plurality of images.
However, tracking a hand or other object in a “noisy” environment (e.g., a moving background or a background having designs similar to a human hand) may prove to be a challenge for known methods of tracking. A system for controlling a device based on tracking of a hand, may, in non-ideal environments, lose sight of the hand or other object and/or end up tracking an object that is not the desired object, causing inaccurate and unreliable performance of the system.